<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>EnumeratedIntegerDistribution (Apache Commons Math 3.6.1 API)</title>
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
</head>
<body>
<script type="text/javascript"><!--
    if (location.href.indexOf('is-external=true') == -1) {
        parent.document.title="EnumeratedIntegerDistribution (Apache Commons Math 3.6.1 API)";
    }
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar_top">
<!--   -->
</a><a href="#skip-navbar_top" title="Skip navigation links"></a><a name="navbar_top_firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/EnumeratedIntegerDistribution.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html">Help</a></li>
</ul>
<div class="aboutLanguage"><em><script type="text/javascript" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"></script></em></div>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../org/apache/commons/math3/distribution/EnumeratedDistribution.html" title="class in org.apache.commons.math3.distribution"><span class="strong">Prev Class</span></a></li>
<li><a href="../../../../../org/apache/commons/math3/distribution/EnumeratedRealDistribution.html" title="class in org.apache.commons.math3.distribution"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/apache/commons/math3/distribution/EnumeratedIntegerDistribution.html" target="_top">Frames</a></li>
<li><a href="EnumeratedIntegerDistribution.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../allclasses-noframe.html">All Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_top");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field_summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor_summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field_detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor_detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_detail">Method</a></li>
</ul>
</div>
<a name="skip-navbar_top">
<!--   -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">org.apache.commons.math3.distribution</div>
<h2 title="Class EnumeratedIntegerDistribution" class="title">Class EnumeratedIntegerDistribution</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
<li>
<ul class="inheritance">
<li><a href="../../../../../org/apache/commons/math3/distribution/AbstractIntegerDistribution.html" title="class in org.apache.commons.math3.distribution">org.apache.commons.math3.distribution.AbstractIntegerDistribution</a></li>
<li>
<ul class="inheritance">
<li>org.apache.commons.math3.distribution.EnumeratedIntegerDistribution</li>
</ul>
</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><a href="http://docs.oracle.com/javase/7/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>, <a href="../../../../../org/apache/commons/math3/distribution/IntegerDistribution.html" title="interface in org.apache.commons.math3.distribution">IntegerDistribution</a></dd>
</dl>
<hr>
<br>
<pre>public class <span class="strong">EnumeratedIntegerDistribution</span>
extends <a href="../../../../../org/apache/commons/math3/distribution/AbstractIntegerDistribution.html" title="class in org.apache.commons.math3.distribution">AbstractIntegerDistribution</a></pre>
<div class="block"><p>Implementation of an integer-valued <a href="../../../../../org/apache/commons/math3/distribution/EnumeratedDistribution.html" title="class in org.apache.commons.math3.distribution"><code>EnumeratedDistribution</code></a>.</p>

 <p>Values with zero-probability are allowed but they do not extend the
 support.<br/>
 Duplicate values are allowed. Probabilities of duplicate values are combined
 when computing cumulative probabilities and statistics.</p></div>
<dl><dt><span class="strong">Since:</span></dt>
  <dd>3.2</dd>
<dt><span class="strong">See Also:</span></dt><dd><a href="../../../../../serialized-form.html#org.apache.commons.math3.distribution.EnumeratedIntegerDistribution">Serialized Form</a></dd></dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- =========== FIELD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="field_summary">
<!--   -->
</a>
<h3>Field Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Field and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="../../../../../org/apache/commons/math3/distribution/EnumeratedDistribution.html" title="class in org.apache.commons.math3.distribution">EnumeratedDistribution</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a>&gt;</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/math3/distribution/EnumeratedIntegerDistribution.html#innerDistribution">innerDistribution</a></strong></code>
<div class="block"><a href="../../../../../org/apache/commons/math3/distribution/EnumeratedDistribution.html" title="class in org.apache.commons.math3.distribution"><code>EnumeratedDistribution</code></a> instance (using the <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang"><code>Integer</code></a> wrapper)
 used to generate the pmf.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="fields_inherited_from_class_org.apache.commons.math3.distribution.AbstractIntegerDistribution">
<!--   -->
</a>
<h3>Fields inherited from class&nbsp;org.apache.commons.math3.distribution.<a href="../../../../../org/apache/commons/math3/distribution/AbstractIntegerDistribution.html" title="class in org.apache.commons.math3.distribution">AbstractIntegerDistribution</a></h3>
<code><a href="../../../../../org/apache/commons/math3/distribution/AbstractIntegerDistribution.html#random">random</a>, <a href="../../../../../org/apache/commons/math3/distribution/AbstractIntegerDistribution.html#randomData">randomData</a></code></li>
</ul>
</li>
</ul>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor_summary">
<!--   -->
</a>
<h3>Constructor Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colOne"><code><strong><a href="../../../../../org/apache/commons/math3/distribution/EnumeratedIntegerDistribution.html#EnumeratedIntegerDistribution(int[])">EnumeratedIntegerDistribution</a></strong>(int[]&nbsp;data)</code>
<div class="block">Create a discrete integer-valued distribution from the input data.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><code><strong><a href="../../../../../org/apache/commons/math3/distribution/EnumeratedIntegerDistribution.html#EnumeratedIntegerDistribution(int[],%20double[])">EnumeratedIntegerDistribution</a></strong>(int[]&nbsp;singletons,
                             double[]&nbsp;probabilities)</code>
<div class="block">Create a discrete distribution using the given probability mass function
 definition.</div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><code><strong><a href="../../../../../org/apache/commons/math3/distribution/EnumeratedIntegerDistribution.html#EnumeratedIntegerDistribution(org.apache.commons.math3.random.RandomGenerator,%20int[])">EnumeratedIntegerDistribution</a></strong>(<a href="../../../../../org/apache/commons/math3/random/RandomGenerator.html" title="interface in org.apache.commons.math3.random">RandomGenerator</a>&nbsp;rng,
                             int[]&nbsp;data)</code>
<div class="block">Create a discrete integer-valued distribution from the input data.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><code><strong><a href="../../../../../org/apache/commons/math3/distribution/EnumeratedIntegerDistribution.html#EnumeratedIntegerDistribution(org.apache.commons.math3.random.RandomGenerator,%20int[],%20double[])">EnumeratedIntegerDistribution</a></strong>(<a href="../../../../../org/apache/commons/math3/random/RandomGenerator.html" title="interface in org.apache.commons.math3.random">RandomGenerator</a>&nbsp;rng,
                             int[]&nbsp;singletons,
                             double[]&nbsp;probabilities)</code>
<div class="block">Create a discrete distribution using the given random number generator
 and probability mass function definition.</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method_summary">
<!--   -->
</a>
<h3>Method Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span>Methods</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>double</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/math3/distribution/EnumeratedIntegerDistribution.html#cumulativeProbability(int)">cumulativeProbability</a></strong>(int&nbsp;x)</code>
<div class="block">For a random variable <code>X</code> whose values are distributed according
 to this distribution, this method returns <code>P(X &lt;= x)</code>.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>double</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/math3/distribution/EnumeratedIntegerDistribution.html#getNumericalMean()">getNumericalMean</a></strong>()</code>
<div class="block">Use this method to get the numerical value of the mean of this
 distribution.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>double</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/math3/distribution/EnumeratedIntegerDistribution.html#getNumericalVariance()">getNumericalVariance</a></strong>()</code>
<div class="block">Use this method to get the numerical value of the variance of this
 distribution.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/math3/distribution/EnumeratedIntegerDistribution.html#getSupportLowerBound()">getSupportLowerBound</a></strong>()</code>
<div class="block">Access the lower bound of the support.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/math3/distribution/EnumeratedIntegerDistribution.html#getSupportUpperBound()">getSupportUpperBound</a></strong>()</code>
<div class="block">Access the upper bound of the support.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/math3/distribution/EnumeratedIntegerDistribution.html#isSupportConnected()">isSupportConnected</a></strong>()</code>
<div class="block">Use this method to get information about whether the support is
 connected, i.e.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>double</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/math3/distribution/EnumeratedIntegerDistribution.html#probability(int)">probability</a></strong>(int&nbsp;x)</code>
<div class="block">For a random variable <code>X</code> whose values are distributed according
 to this distribution, this method returns <code>P(X = x)</code>.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/math3/distribution/EnumeratedIntegerDistribution.html#sample()">sample</a></strong>()</code>
<div class="block">Generate a random value sampled from this distribution.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods_inherited_from_class_org.apache.commons.math3.distribution.AbstractIntegerDistribution">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;org.apache.commons.math3.distribution.<a href="../../../../../org/apache/commons/math3/distribution/AbstractIntegerDistribution.html" title="class in org.apache.commons.math3.distribution">AbstractIntegerDistribution</a></h3>
<code><a href="../../../../../org/apache/commons/math3/distribution/AbstractIntegerDistribution.html#cumulativeProbability(int,%20int)">cumulativeProbability</a>, <a href="../../../../../org/apache/commons/math3/distribution/AbstractIntegerDistribution.html#inverseCumulativeProbability(double)">inverseCumulativeProbability</a>, <a href="../../../../../org/apache/commons/math3/distribution/AbstractIntegerDistribution.html#logProbability(int)">logProbability</a>, <a href="../../../../../org/apache/commons/math3/distribution/AbstractIntegerDistribution.html#reseedRandomGenerator(long)">reseedRandomGenerator</a>, <a href="../../../../../org/apache/commons/math3/distribution/AbstractIntegerDistribution.html#sample(int)">sample</a>, <a href="../../../../../org/apache/commons/math3/distribution/AbstractIntegerDistribution.html#solveInverseCumulativeProbability(double,%20int,%20int)">solveInverseCumulativeProbability</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods_inherited_from_class_java.lang.Object">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone()" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals(java.lang.Object)" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize()" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass()" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode()" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify()" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll()" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#toString()" title="class or interface in java.lang">toString</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait()" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait(long)" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait(long,%20int)" title="class or interface in java.lang">wait</a></code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ FIELD DETAIL =========== -->
<ul class="blockList">
<li class="blockList"><a name="field_detail">
<!--   -->
</a>
<h3>Field Detail</h3>
<a name="innerDistribution">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>innerDistribution</h4>
<pre>protected final&nbsp;<a href="../../../../../org/apache/commons/math3/distribution/EnumeratedDistribution.html" title="class in org.apache.commons.math3.distribution">EnumeratedDistribution</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a>&gt; innerDistribution</pre>
<div class="block"><a href="../../../../../org/apache/commons/math3/distribution/EnumeratedDistribution.html" title="class in org.apache.commons.math3.distribution"><code>EnumeratedDistribution</code></a> instance (using the <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang"><code>Integer</code></a> wrapper)
 used to generate the pmf.</div>
</li>
</ul>
</li>
</ul>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor_detail">
<!--   -->
</a>
<h3>Constructor Detail</h3>
<a name="EnumeratedIntegerDistribution(int[], double[])">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>EnumeratedIntegerDistribution</h4>
<pre>public&nbsp;EnumeratedIntegerDistribution(int[]&nbsp;singletons,
                             double[]&nbsp;probabilities)
                              throws <a href="../../../../../org/apache/commons/math3/exception/DimensionMismatchException.html" title="class in org.apache.commons.math3.exception">DimensionMismatchException</a>,
                                     <a href="../../../../../org/apache/commons/math3/exception/NotPositiveException.html" title="class in org.apache.commons.math3.exception">NotPositiveException</a>,
                                     <a href="../../../../../org/apache/commons/math3/exception/MathArithmeticException.html" title="class in org.apache.commons.math3.exception">MathArithmeticException</a>,
                                     <a href="../../../../../org/apache/commons/math3/exception/NotFiniteNumberException.html" title="class in org.apache.commons.math3.exception">NotFiniteNumberException</a>,
                                     <a href="../../../../../org/apache/commons/math3/exception/NotANumberException.html" title="class in org.apache.commons.math3.exception">NotANumberException</a></pre>
<div class="block">Create a discrete distribution using the given probability mass function
 definition.
 <p>
 <b>Note:</b> this constructor will implicitly create an instance of
 <a href="../../../../../org/apache/commons/math3/random/Well19937c.html" title="class in org.apache.commons.math3.random"><code>Well19937c</code></a> as random generator to be used for sampling only (see
 <a href="../../../../../org/apache/commons/math3/distribution/EnumeratedIntegerDistribution.html#sample()"><code>sample()</code></a> and <a href="../../../../../org/apache/commons/math3/distribution/AbstractIntegerDistribution.html#sample(int)"><code>AbstractIntegerDistribution.sample(int)</code></a>). In case no sampling is
 needed for the created distribution, it is advised to pass <code>null</code>
 as random generator via the appropriate constructors to avoid the
 additional initialisation overhead.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>singletons</code> - array of random variable values.</dd><dd><code>probabilities</code> - array of probabilities.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="../../../../../org/apache/commons/math3/exception/DimensionMismatchException.html" title="class in org.apache.commons.math3.exception">DimensionMismatchException</a></code> - if
 <code>singletons.length != probabilities.length</code></dd>
<dd><code><a href="../../../../../org/apache/commons/math3/exception/NotPositiveException.html" title="class in org.apache.commons.math3.exception">NotPositiveException</a></code> - if any of the probabilities are negative.</dd>
<dd><code><a href="../../../../../org/apache/commons/math3/exception/NotFiniteNumberException.html" title="class in org.apache.commons.math3.exception">NotFiniteNumberException</a></code> - if any of the probabilities are infinite.</dd>
<dd><code><a href="../../../../../org/apache/commons/math3/exception/NotANumberException.html" title="class in org.apache.commons.math3.exception">NotANumberException</a></code> - if any of the probabilities are NaN.</dd>
<dd><code><a href="../../../../../org/apache/commons/math3/exception/MathArithmeticException.html" title="class in org.apache.commons.math3.exception">MathArithmeticException</a></code> - all of the probabilities are 0.</dd></dl>
</li>
</ul>
<a name="EnumeratedIntegerDistribution(org.apache.commons.math3.random.RandomGenerator, int[], double[])">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>EnumeratedIntegerDistribution</h4>
<pre>public&nbsp;EnumeratedIntegerDistribution(<a href="../../../../../org/apache/commons/math3/random/RandomGenerator.html" title="interface in org.apache.commons.math3.random">RandomGenerator</a>&nbsp;rng,
                             int[]&nbsp;singletons,
                             double[]&nbsp;probabilities)
                              throws <a href="../../../../../org/apache/commons/math3/exception/DimensionMismatchException.html" title="class in org.apache.commons.math3.exception">DimensionMismatchException</a>,
                                     <a href="../../../../../org/apache/commons/math3/exception/NotPositiveException.html" title="class in org.apache.commons.math3.exception">NotPositiveException</a>,
                                     <a href="../../../../../org/apache/commons/math3/exception/MathArithmeticException.html" title="class in org.apache.commons.math3.exception">MathArithmeticException</a>,
                                     <a href="../../../../../org/apache/commons/math3/exception/NotFiniteNumberException.html" title="class in org.apache.commons.math3.exception">NotFiniteNumberException</a>,
                                     <a href="../../../../../org/apache/commons/math3/exception/NotANumberException.html" title="class in org.apache.commons.math3.exception">NotANumberException</a></pre>
<div class="block">Create a discrete distribution using the given random number generator
 and probability mass function definition.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>rng</code> - random number generator.</dd><dd><code>singletons</code> - array of random variable values.</dd><dd><code>probabilities</code> - array of probabilities.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="../../../../../org/apache/commons/math3/exception/DimensionMismatchException.html" title="class in org.apache.commons.math3.exception">DimensionMismatchException</a></code> - if
 <code>singletons.length != probabilities.length</code></dd>
<dd><code><a href="../../../../../org/apache/commons/math3/exception/NotPositiveException.html" title="class in org.apache.commons.math3.exception">NotPositiveException</a></code> - if any of the probabilities are negative.</dd>
<dd><code><a href="../../../../../org/apache/commons/math3/exception/NotFiniteNumberException.html" title="class in org.apache.commons.math3.exception">NotFiniteNumberException</a></code> - if any of the probabilities are infinite.</dd>
<dd><code><a href="../../../../../org/apache/commons/math3/exception/NotANumberException.html" title="class in org.apache.commons.math3.exception">NotANumberException</a></code> - if any of the probabilities are NaN.</dd>
<dd><code><a href="../../../../../org/apache/commons/math3/exception/MathArithmeticException.html" title="class in org.apache.commons.math3.exception">MathArithmeticException</a></code> - all of the probabilities are 0.</dd></dl>
</li>
</ul>
<a name="EnumeratedIntegerDistribution(org.apache.commons.math3.random.RandomGenerator, int[])">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>EnumeratedIntegerDistribution</h4>
<pre>public&nbsp;EnumeratedIntegerDistribution(<a href="../../../../../org/apache/commons/math3/random/RandomGenerator.html" title="interface in org.apache.commons.math3.random">RandomGenerator</a>&nbsp;rng,
                             int[]&nbsp;data)</pre>
<div class="block">Create a discrete integer-valued distribution from the input data.  Values are assigned
 mass based on their frequency.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>rng</code> - random number generator used for sampling</dd><dd><code>data</code> - input dataset</dd><dt><span class="strong">Since:</span></dt>
  <dd>3.6</dd></dl>
</li>
</ul>
<a name="EnumeratedIntegerDistribution(int[])">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>EnumeratedIntegerDistribution</h4>
<pre>public&nbsp;EnumeratedIntegerDistribution(int[]&nbsp;data)</pre>
<div class="block">Create a discrete integer-valued distribution from the input data.  Values are assigned
 mass based on their frequency.  For example, [0,1,1,2] as input creates a distribution
 with values 0, 1 and 2 having probability masses 0.25, 0.5 and 0.25 respectively,</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>data</code> - input dataset</dd><dt><span class="strong">Since:</span></dt>
  <dd>3.6</dd></dl>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method_detail">
<!--   -->
</a>
<h3>Method Detail</h3>
<a name="probability(int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>probability</h4>
<pre>public&nbsp;double&nbsp;probability(int&nbsp;x)</pre>
<div class="block">For a random variable <code>X</code> whose values are distributed according
 to this distribution, this method returns <code>P(X = x)</code>. In other
 words, this method represents the probability mass function (PMF)
 for the distribution.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>x</code> - the point at which the PMF is evaluated</dd>
<dt><span class="strong">Returns:</span></dt><dd>the value of the probability mass function at <code>x</code></dd></dl>
</li>
</ul>
<a name="cumulativeProbability(int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>cumulativeProbability</h4>
<pre>public&nbsp;double&nbsp;cumulativeProbability(int&nbsp;x)</pre>
<div class="block">For a random variable <code>X</code> whose values are distributed according
 to this distribution, this method returns <code>P(X &lt;= x)</code>.  In other
 words, this method represents the (cumulative) distribution function
 (CDF) for this distribution.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>x</code> - the point at which the CDF is evaluated</dd>
<dt><span class="strong">Returns:</span></dt><dd>the probability that a random variable with this
 distribution takes a value less than or equal to <code>x</code></dd></dl>
</li>
</ul>
<a name="getNumericalMean()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getNumericalMean</h4>
<pre>public&nbsp;double&nbsp;getNumericalMean()</pre>
<div class="block">Use this method to get the numerical value of the mean of this
 distribution.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd><code>sum(singletons[i] * probabilities[i])</code></dd></dl>
</li>
</ul>
<a name="getNumericalVariance()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getNumericalVariance</h4>
<pre>public&nbsp;double&nbsp;getNumericalVariance()</pre>
<div class="block">Use this method to get the numerical value of the variance of this
 distribution.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd><code>sum((singletons[i] - mean) ^ 2 * probabilities[i])</code></dd></dl>
</li>
</ul>
<a name="getSupportLowerBound()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getSupportLowerBound</h4>
<pre>public&nbsp;int&nbsp;getSupportLowerBound()</pre>
<div class="block">Access the lower bound of the support. This method must return the same
 value as <code>inverseCumulativeProbability(0)</code>. In other words, this
 method must return
 <p><code>inf {x in Z | P(X <= x) > 0}</code>.</p>

 Returns the lowest value with non-zero probability.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>the lowest value with non-zero probability.</dd></dl>
</li>
</ul>
<a name="getSupportUpperBound()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getSupportUpperBound</h4>
<pre>public&nbsp;int&nbsp;getSupportUpperBound()</pre>
<div class="block">Access the upper bound of the support. This method must return the same
 value as <code>inverseCumulativeProbability(1)</code>. In other words, this
 method must return
 <p><code>inf {x in R | P(X <= x) = 1}</code>.</p>

 Returns the highest value with non-zero probability.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>the highest value with non-zero probability.</dd></dl>
</li>
</ul>
<a name="isSupportConnected()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isSupportConnected</h4>
<pre>public&nbsp;boolean&nbsp;isSupportConnected()</pre>
<div class="block">Use this method to get information about whether the support is
 connected, i.e. whether all integers between the lower and upper bound of
 the support are included in the support.

 The support of this distribution is connected.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd><code>true</code></dd></dl>
</li>
</ul>
<a name="sample()">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>sample</h4>
<pre>public&nbsp;int&nbsp;sample()</pre>
<div class="block">Generate a random value sampled from this distribution.

 The default implementation uses the
 <a href="http://en.wikipedia.org/wiki/Inverse_transform_sampling">
 inversion method</a>.</div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../../../org/apache/commons/math3/distribution/IntegerDistribution.html#sample()">sample</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/commons/math3/distribution/IntegerDistribution.html" title="interface in org.apache.commons.math3.distribution">IntegerDistribution</a></code></dd>
<dt><strong>Overrides:</strong></dt>
<dd><code><a href="../../../../../org/apache/commons/math3/distribution/AbstractIntegerDistribution.html#sample()">sample</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../org/apache/commons/math3/distribution/AbstractIntegerDistribution.html" title="class in org.apache.commons.math3.distribution">AbstractIntegerDistribution</a></code></dd>
<dt><span class="strong">Returns:</span></dt><dd>a random value</dd></dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar_bottom">
<!--   -->
</a><a href="#skip-navbar_bottom" title="Skip navigation links"></a><a name="navbar_bottom_firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/EnumeratedIntegerDistribution.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html">Help</a></li>
</ul>
<div class="aboutLanguage"><em><script type="text/javascript" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"></script></em></div>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../org/apache/commons/math3/distribution/EnumeratedDistribution.html" title="class in org.apache.commons.math3.distribution"><span class="strong">Prev Class</span></a></li>
<li><a href="../../../../../org/apache/commons/math3/distribution/EnumeratedRealDistribution.html" title="class in org.apache.commons.math3.distribution"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/apache/commons/math3/distribution/EnumeratedIntegerDistribution.html" target="_top">Frames</a></li>
<li><a href="EnumeratedIntegerDistribution.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../allclasses-noframe.html">All Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_bottom");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field_summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor_summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field_detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor_detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_detail">Method</a></li>
</ul>
</div>
<a name="skip-navbar_bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small>Copyright &#169; 2003&#x2013;2016 <a href="http://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
</body>
</html>
